AddAdministrativeRestoreJob

AddAdministrativeRestoreJob is used to restore files to the same device or from one device to another. The equivalent options in the dashboard are on the Restore tab for a device.

If you expect to restore often with the API, you may want to set up one or more dedicated restore devices. Create and install these devices, including pushing an automated installation, the same way you would devices you are backing up. Consider using a unique naming scheme for these devices so they are easy to identify. You may want to have a dedicated policy set to assign to these devices so the restored data is not backed up. A dedicated policy set also allows you to configure unique bandwidth settings for these devices. Because the restore only performs basic file name and type searching, you may need to restore all data and then use an eDiscovery tool to search for what you need.

If you want to restore all files to the same place on your network, use the following steps as a guideline.

  1. Make sure each restore device is domain joined.
  2. Modify the Data Protection Service on each restore device to use the Local System account.
  3. Create a folder on the network, giving Domain Computers (all computers) or the specific computers you need to restore full control to the folder.
  4. Share the folder, giving Domain Computers (all computers) or the specific computers you need to restore full control to the share.

When you restore, you can specify the UNC path for the share. For example, if you specify \\Path\SharedFolder\{UserEmail}\{DateTime}, you will be able to distinguish the restores in the shared location. You can keep this location locked to only certain people have access to the restored files, or if the user who needs access to the restore files also has access to the shared location, the user can access the files immediately after the restored.

If you performing multiple restores and are concerned about bandwidth usage, keep in mind the following.

See AddAdministrativeRestoreJob for an example PowerShell script.

Signature

Copy
ServiceResponse AddAdministrativeRestoreJob (CallingContext callingContext, AddAdministrativeRestoreJobInput input, out AddAdministrativeRestoreJobResult result);

Data structure

The input to AddAdministrativeRestoreJob is an array of AddAdministrativeRestoreJobInput structures which contain the information for the restoration.

Copy
[DataContract]
public class AddAdministrativeRestoreJobInput
{
    public AddAdministrativeRestoreJobInput ()
    {
    }

    [DataMember]
    public Guid CompanyID;

    [DataMember]
    public string ExtensionCategoryToApplyToFolders;

    [DataMember]
    public string FileOrFolderNameSearchFilterToApplyToFolders;

    [DataMember]
    public List<string> FoldersToRestore { get; set;};

    [DataMember]
    public Guid HostDeviceIds();

    [DataMember]
    public bool IncludeDeletedFiles;

    [DataMember]
    public bool IncludeFilesThatShouldHaveBeenDeletedIfDeviceWasNotOnLegalHold;

    [DataMember]
    public bool IncludeUSMTLoad;

    [DataMember]
    public string RestoreFileReplacementRules;

    [DataMember]
    public bool RestoreFirstVersionAfterRestoreTimeIfFileDoesNotYetExist;

    [DataMember]
    public bool RestoreTheMostRecentFileInstances;

    [DataMember]
    public DateTime RestoreTimeUtc;

    [DataMember]
    public bool RestoreToOriginalLocation;

    [DataMember]
    public string RestoreToThisSpecificLocationPath;

    [DataMember]
    public Guid SourceDeviceIds();

    [DataMember]
    public string SpecificFilesToRestore();

    [DataMember]
    public Guid SubmissionID;
}

You can specify one or more fields in AddAdministrativeRestoreJob.

Result

The result is the BaseServiceResult described in General API structure.

Copy
[DataContract]
public class AddAdministrativeRestoreJobResult : BaseServiceResult
{
    public AddAdministrativeRestoreJobResult()
    {
    }
}