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>

enter image description here


I have never tried this using CSOM, but it seems FileVersionCollection.RestoreByLabel is what you are looking for.