public static void getCreatePackage1(Id recordId) { //Get the file ContentDocumentLink objConDocLink = [Select ContentDocumentId,ContentDocument.title from ContentDocumentLink where LinkedEntityId =: recordId and ContentDocument.title like '%UnSigned%']; if(objConDocLink != null){ ContentVersion objContVer = [SELECT Id,VersionData from ContentVersion where ContentDocumentId =: objConDocLink.ContentDocumentId]; OneSpanSDK sdk = new OneSpanSDK(); system.debug(objContVer.VersionData); //Create package OneSpanAPIObjects.Package_x pkg = new OneSpanAPIObjects.Package_x(); pkg.name = 'Test Text Tags - ' + Datetime.now().format(); pkg.status = OneSpanAPIObjects.PackageStatus.DRAFT; //Create Roles String roleId1 = 'signer1'; // String roleId2 = 'signer2'; OneSpanAPIObjects.Role role1 = new OneSpanAPIObjects.Role(); role1.signers = sdk.createRolesSigner('FirstName', 'LastName', 'test123@deloitte.com', 'CEO', 'ABC Bank'); role1.id = roleId1; role1.name = roleId1; /* OneSpanAPIObjects.Role role2 = new OneSpanAPIObjects.Role(); role2.signers = sdk.createRolesSigner('FirstName', 'LastName', 'test@mailinator.com', 'CEO1', 'ABC Bank1'); role2.id = roleId2; role2.name = roleId2; */ pkg.roles = new List{role1}; //add role //Prepare Documents Blob String document1Name = 'Sample_Text_Tag'; Map documentBlobMap = new Map(); documentBlobMap.put(document1Name, objContVer.VersionData); //Create Document Metadata OneSpanAPIObjects.Document document1 = new OneSpanAPIObjects.Document(); document1.name = document1Name; document1.id = document1Name; document1.extract = true; OneSpanAPIObjects.Data data_x = new OneSpanAPIObjects.Data(); data_x.esl_doc_extract_type = '1'; document1.data = data_x; //Approval for client OneSpanAPIObjects.Approval approvalForClient = new OneSpanAPIObjects.Approval(); approvalForClient.role = roleId1; approvalForClient.id = 'approvalForClient'; //text field: first_name OneSpanAPIObjects.Field fieldClient3 = new OneSpanAPIObjects.Field(); fieldClient3.extract = true; fieldClient3.name = 'first_name'; //match pdf field property name fieldClient3.type = 'INPUT'; fieldClient3.subtype = 'TEXTFIELD'; //text field: last_name OneSpanAPIObjects.Field fieldClient4 = new OneSpanAPIObjects.Field(); fieldClient4.extract = true; fieldClient4.name = 'last_name'; //match pdf field property name fieldClient4.type = 'INPUT'; fieldClient4.subtype = 'TEXTFIELD'; approvalForClient.fields = new List{fieldClient3,fieldClient4}; document1.approvals = new List{approvalForClient}; pkg.documents = new List{document1}; //add document //Send package One Step String packageId = sdk.createPackage(pkg,documentBlobMap); System.debug('PackageId: ' + packageId); //Send package pkg.status = OneSpanAPIObjects.PackageStatus.SENT; sdk.updatePackage(pkg, packageId); } }