Sharepoint - How to restore a previous document version via client-side API?
You can use the below sample code that uses the restoreByLabel method to restore the previous version of the document.
<script language="javascript" type="text/javascript"
src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
SP.SOD.executeFunc('sp.js', 'SP.ClientContext',restoreFile);
});
var oFile;
function restoreFile() {
//Get client context and web
clientContext = new SP.ClientContext();
var oWeb = clientContext.get_web();
//Get File object and restore a specific version
oFile=oWeb.getFileByServerRelativeUrl('/sites/Playground/Demo
Library/Document.docx');
oFile.get_versions().restoreByLabel("6.0");
//Load Client Context and execute the batch
clientContext.load(oFile);
clientContext.executeQueryAsync(QuerySuccess, QueryFailure);
}
function QuerySuccess() {
//Get major version
var majorVersion =oFile.get_majorVersion();
console.log("Version Restored . New Major Version - "+ majorVersion );
}
function QueryFailure(sender,args) {
console.log('Request failed - '+args.get_message());
}
</script>
I have never tried this using CSOM, but it seems FileVersionCollection.RestoreByLabel
is what you are looking for.