GroupDocs.Comparison Cloud allows to protect resultant document with password.
The following code snippet demonstrates how to compare documents and protect resultant document with password
API usage
There are steps that usage of GroupDocs.Comparison Cloud consists of:
Upload input documents into cloud storage
Compare documents or get document info
Download comparison result document from storage
Steps 1 and 3 are storage operations, please refer to this File API documentation for usage details.
Swagger UI lets you call this REST API directly from the browser.
cURL example
# Get JSON Web Token# Ensure CLIENT_ID and CLIENT_SECRET are set as environment variablescurl -v "https://api.groupdocs.cloud/connect/token"\
-X POST \
-d "grant_type=client_credentials&client_id=$CLIENT_ID&client_secret=$CLIENT_SECRET"\
-H "Content-Type: application/x-www-form-urlencoded"\
-H "Accept: application/json"# Get document information (replace $JWT_TOKEN with the token received above)curl -v "https://api.groupdocs.cloud/v2.0/comparison/comparisons"\
-X POST \
-H "Content-Type: application/json"\
-H "Accept: application/json"\
-H "Authorization: Bearer $JWT_TOKEN"\
-d '{
"SourceFile": {
"FilePath": "source_files/word/source.docx"
},
"TargetFiles": [
{
"FilePath": "target_files/word/target.docx"
}
],
"OutputPath": "output/result.docx",
"Settings": {
"PasswordSaveOption": "User",
"Password": "3333"
}
}'
# Get JSON Web Token# Make sure CLIENT_ID and CLIENT_SECRET are defined as environment variablescurl.exe-v"https://api.groupdocs.cloud/connect/token"`-XPOST`-d"grant_type=client_credentials&client_id=$env:CLIENT_ID&client_secret=$env:CLIENT_SECRET"`-H"Content-Type: application/x-www-form-urlencoded"`-H"Accept: application/json"# Get document information (replace $env:JWT_TOKEN with the token received above)curl.exe-v"https://api.groupdocs.cloud/v2.0/comparison/comparisons"`-XPOST`-H"Content-Type: application/json"`-H"Accept: application/json"`-H"Authorization: Bearer $env:JWT_TOKEN"`-d"{
'SourceFile': {
'FilePath': 'source_files/word/source.docx'
},
'TargetFiles': [
{
'FilePath': 'target_files/word/target.docx'
}
],
'OutputPath': 'output/result.docx',
'Settings': {
'PasswordSaveOption': 'User',
'Password': '3333'
}
}"
:: Get JSON Web Token:: Ensure CLIENT_ID and CLIENT_SECRET are set as environment variablescurl -v "https://api.groupdocs.cloud/connect/token"^ -X POST ^ -d "grant_type=client_credentials&client_id=%CLIENT_ID%&client_secret=%CLIENT_SECRET%"^ -H "Content-Type: application/x-www-form-urlencoded"^ -H "Accept: application/json":: Get document information (replace %JWT_TOKEN% with the token received above)curl -v "https://api.groupdocs.cloud/v2.0/comparison/comparisons"^ -X POST ^ -H "Content-Type: application/json"^ -H "Accept: application/json"^ -H "Authorization: Bearer %JWT_TOKEN%"^ -d "{\"SourceFile\":{\"FilePath\":\"source_files/word/source.docx\"},\"TargetFiles\":[{\"FilePath\":\"target_files/word/target.docx\"}],\"OutputPath\":\"output/result.docx\",\"Settings\":{\"PasswordSaveOption\":\"User\",\"Password\":\"3333\"}}"
Using an SDK (API client) is the quickest way for a developer to speed up the development. An SDK takes care of a lot of low-level details of making requests and handling responses and lets you focus on writing code specific to your particular project. Check out our GitHub repository for a complete list of GroupDocs.Comparison Cloud SDKs along with working examples, to get you started in no time. Please check Available SDKs article to learn how to add an SDK to your project.
// For complete examples and data files, please go to https://github.com/groupdocs-comparison-cloud/groupdocs-comparison-cloud-dotnet-samplesstringMyClientSecret="";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloudstringMyClientId="";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloudvarconfiguration=newConfiguration(MyClientId,MyClientSecret);varapiInstance=newCompareApi(configuration);varoptions=newComparisonOptions{SourceFile=newFileInfo{FilePath="source_files/word/source.docx"},TargetFiles=newList<FileInfo>{newFileInfo{FilePath="target_files/word/target.docx"}},Settings=newSettings{PasswordSaveOption=Settings.PasswordSaveOptionEnum.User,Password="3333"},OutputPath="output/result.docx"};varrequest=newComparisonsRequest(options);varresponse=apiInstance.Comparisons(request);
// For complete examples and data files, please go to https://github.com/groupdocs-comparison-cloud/groupdocs-comparison-cloud-java-samples
StringMyClientSecret="";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud
StringMyClientId="";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud
Configurationconfiguration=newConfiguration(MyClientId,MyClientSecret);CompareApiapiInstance=newCompareApi(configuration);varoptions=newComparisonOptions{SourceFile=newFileInfo{FilePath="source_files/word/source.docx"},TargetFiles=newList<FileInfo>{newFileInfo{FilePath="target_files/word/target.docx"}},Settings=newSettings{PasswordSaveOption=Settings.PasswordSaveOptionEnum.User,Password="3333"},OutputPath="output/result.docx"};varrequest=newComparisonsRequest(options);varresponse=apiInstance.Comparisons(request);
// For complete examples and data files, please go to https://github.com/groupdocs-comparison-cloud/groupdocs-comparison-cloud-php-samples
useGroupDocs\Comparison\Model;useGroupDocs\Comparison\Model\Requests;$ClientId="";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud
$ClientSecret="";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud
$configuration=newGroupDocs\Comparison\Configuration();$configuration->setAppSid($ClientId);$configuration->setAppKey($ClientSecret);$apiInstance=newGroupDocs\Comparison\CompareApi($configuration);$sourceFile=newModel\FileInfo();$sourceFile->setFilePath("source_files/word/source.docx");$targetFile=newModel\FileInfo();$targetFile->setFilePath("target_files/word/target.docx");$options=newModel\ComparisonOptions();$options->setSourceFile($sourceFile);$options->setTargetFiles([$targetFile]);$options->setOutputPath("output/result.docx");$settings=newModel\Settings();$settings->setPasswordSaveOption(Model\Settings::PASSWORD_SAVE_OPTION_USER);$settings->setPassword("3333");$options->setSettings($settings);$request=newRequests\ComparisonsRequest($options);$response=$apiInstance->comparisons($request);
// For complete examples and data files, please go to https://github.com/groupdocs-comparison-cloud/groupdocs-comparison-cloud-node-samples
global.comparison_cloud=require("groupdocs-comparison-cloud");global.clientId="XXXX-XXXX-XXXX-XXXX";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud
global.clientSecret="XXXXXXXXXXXXXXXX";// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud
global.compareApi=comparison_cloud.CompareApi.fromKeys(clientId,clientSecret);try{letsource=newcomparison_cloud.FileInfo();source.filePath="source_files/word/source.docx";lettarget=newcomparison_cloud.FileInfo();target.filePath="target_files/word/target.docx";letsettings=newcomparison_cloud.Settings();settings.password="3333";settings.passwordSaveOption=comparison_cloud.Settings.PasswordSaveOptionEnum.User;letoptions=newcomparison_cloud.ComparisonOptions();options.sourceFile=source;options.targetFiles=[target];options.outputPath="output/result.docx";options.settings=settings;letrequest=newcomparison_cloud.ComparisonsRequest(options);letresponse=awaitcompareApi.comparisons(request);console.log("Output file link: "+response.href);}catch(error){console.log(error.message);}
# For complete examples and data files, please go to https://github.com/groupdocs-comparison-cloud/groupdocs-comparison-cloud-python-samplesimportgroupdocs_comparison_cloudclient_id="XXXX-XXXX-XXXX-XXXX"# Get ClientId and ClientSecret from https://dashboard.groupdocs.cloudclient_secret="XXXXXXXXXXXXXXXX"# Get ClientId and ClientSecret from https://dashboard.groupdocs.cloudapi_instance=groupdocs_comparison_cloud.CompareApi.from_keys(client_id,client_secret)source=groupdocs_comparison_cloud.FileInfo()source.file_path="source_files/word/source.docx"target=groupdocs_comparison_cloud.FileInfo()target.file_path="target_files/word/target.docx"options=groupdocs_comparison_cloud.ComparisonOptions()options.source_file=sourceoptions.target_files=[target]options.output_path="output/result.docx"settings=groupdocs_comparison_cloud.Settings()settings.password_save_option="User"settings.password="3333"options.settings=settingsrequest=groupdocs_comparison_cloud.ComparisonsRequest(options)response=api_instance.comparisons(request)
# For complete examples and data files, please go to https://github.com/groupdocs-comparison-cloud/groupdocs-comparison-cloud-ruby-samplesrequire'groupdocs_comparison_cloud'$client_id="XXXX-XXXX-XXXX-XXXX"# Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud$client_secret="XXXXXXXXXXXXXXXX"# Get ClientId and ClientSecret from https://dashboard.groupdocs.cloudapi_instance=GroupDocsComparisonCloud::CompareApi.from_keys($client_id,$client_secret)source=GroupDocsComparisonCloud::FileInfo.newsource.file_path="source_files/word/source.docx"target=GroupDocsComparisonCloud::FileInfo.newtarget.file_path="target_files/word/target.docx"options=GroupDocsComparisonCloud::ComparisonOptions.newoptions.source_file=sourceoptions.target_files=[target]options.output_path="output/result.docx"settings=GroupDocsComparisonCloud::Settings.newsettings.password_save_option="User"settings.password="3333"options.settings=settingsrequest=GroupDocsComparisonCloud::ComparisonsRequest.new(options)response=apiInstance.comparisons(request)
// Create configuration and API instances
Configurationconfig=newConfiguration('YOUR_API_KEY','YOUR_API_SECRET');// Get ClientId and ClientSecret from https://dashboard.groupdocs.cloud
FileApifileApi=newFileApi(config);CompareApicompareApi=newCompareApi(config);// Upload source file to cloud storage
List<ContentVersion>sourceVersions=[SELECTId,Title,VersionDataFROMContentVersionWHERETitle='source.docx'LIMIT1];if(sourceVersions.size()>0){fileApi.uploadFile(newUploadFileRequest('source_files/word/source.docx',sourceVersions[0].VersionData,null));}// Upload target file to cloud storage
List<ContentVersion>targetVersions=[SELECTId,Title,VersionDataFROMContentVersionWHERETitle='target.docx'LIMIT1];if(targetVersions.size()>0){fileApi.uploadFile(newUploadFileRequest('target_files/word/target.docx',targetVersions[0].VersionData,null));}// Set up comparison options
ComparisonOptionsoptions=newComparisonOptions();options.SourceFile=newFileInfo();options.SourceFile.FilePath='source_files/word/source.docx';options.TargetFiles=newList<FileInfo>();FileInfotargetFile=newFileInfo();targetFile.FilePath='target_files/word/target.docx';options.TargetFiles.add(targetFile);options.Settings=newSettings();options.Settings.PasswordSaveOption=Settings.PasswordSaveOptionEnum.User;options.Settings.Password='3333';options.OutputPath='output/result.docx';// Execute comparison
ComparisonsRequestrequest=newComparisonsRequest(options);Linkresponse=compareApi.comparisons(request);// Debug the result
System.debug('Comparison complete. Output file link: '+response.href);
Was this page helpful?
Any additional feedback you'd like to share with us?
Please tell us how we can improve this page.
Thank you for your feedback!
We value your opinion. Your feedback will help us improve our documentation.
On this page
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.