docusign SOAP API를 사용하여 Salesforce에서 docusign 봉투를 보내려고했습니다. Docusign API의 CreateEnvelopeFromTemplates 메소드를 사용하고 있는데, docusign 샌드 박스에서 만들어진 기능적 템플릿이 있지만 요청을 보낼 때마다 내 응답에 지정되지 않은 오류가 발생합니다. 아래는 내가 아래Docusign SOAP API가 지정하지 않은 오류를 반환합니다.
wwwDocusignNetApi30.EnvelopeInformation envelope = new wwwDocusignNetApi30.EnvelopeInformation();
envelope.Subject = 'Envelope Subject' ;
envelope.EmailBlurb = 'Email Blurb';
envelope.AccountId = '********-****-****-****-************';
//use custom field to store the id of the record that initiated the transaction
envelope.CustomFields = new wwwDocusignNetApi30.ArrayOfCustomField();
envelope.CustomFields.CustomField = new wwwDocusignNetApi30.CustomField[2];
wwwDocusignNetApi30.CustomField myCustomField = new wwwDocusignNetApi30.CustomField();
myCustomField.Name = 'DSFSSourceObjectId';
myCustomField.Value = '0012600000PQn9g';
myCustomField.Show = 'false';
myCustomField.Required = 'false';
myCustomField.CustomFieldType = 'Text';
envelope.CustomFields.CustomField.add(myCustomField);
wwwDocusignNetApi30.ArrayOfTemplateReference templateArray = new wwwDocusignNetApi30.ArrayOfTemplateReference();
templateArray.TemplateReference = new wwwDocusignNetApi30.TemplateReference[2];
wwwDocusignNetApi30.TemplateReference templat = new wwwDocusignNetApi30.TemplateReference();// TemplateReferences
templat.Template = '********-****-****-****-************';
templat.TemplateLocation = 'Server';
wwwDocusignNetApi30.ArrayOfRecipient1 recArray = new wwwDocusignNetApi30.ArrayOfRecipient1();
recArray.Recipient = new wwwDocusignNetApi30.Recipient[2];
wwwDocusignNetApi30.Recipient recipient = new wwwDocusignNetApi30.Recipient();
recipient.ID = 100987;
recipient.Type_x = 'Signer';
recipient.RoutingOrder = 2;
recipient.Email = '[email protected]';
recipient.UserName = 'Test';
recArray.Recipient.add(recipient);
wwwDocusignNetApi30.TemplateReferenceRoleAssignment trra = new wwwDocusignNetApi30.TemplateReferenceRoleAssignment();
trra.RoleName='Signer 1';
trra.RecipientID = recipient.ID;
wwwDocusignNetApi30.ArrayOfTemplateReferenceRoleAssignment roleArray = new wwwDocusignNetApi30.ArrayOfTemplateReferenceRoleAssignment();
roleArray.RoleAssignment = new wwwDocusignNetApi30.TemplateReferenceRoleAssignment[1];
roleArray.RoleAssignment.add(trra);
templat.RoleAssignments = new wwwDocusignNetApi30.ArrayOfTemplateReferenceRoleAssignment();
templat.RoleAssignments = (roleArray);
templateArray.TemplateReference.add(templat);
String auth = '<DocuSignCredentials><Username>********-****-****-****-************</Username><Password>PASSWORD</Password><IntegratorKey>********-****-****-****-************</IntegratorKey></DocuSignCredentials>';
wwwDocusignNetApi30.APIServiceSoap service = new wwwDocusignNetApi30.APIServiceSoap();
service.inputHttpHeaders_x = new Map<String, String>();
service.inputHttpHeaders_x.put('X-DocuSign-Authentication',auth);
service.CreateEnvelopeFromTemplates(templateArray,recArray,envelope,true);
사용하고있는 코드를 내가받을 응답입니다 :
System.CalloutException: Web service callout failed: WebService returned a SOAP Fault: Unspecified_Error faultcode=soap:Server faultactor=https://demo.docusign.net/api/3.0/dsapi.asmx
오류 메시지가 모호하기 때문에, 나는이 문제를 디버깅 할 수 없습니다입니다. 어떤 도움을 주셔서 감사합니다.
SOAP API 대신 SOAP xml을 docusign에 직접 보내고 xml에 비누 헤더를 추가하여 지정되지 않은 오류를 해결하는 Unspecified 오류를 해결할 수있었습니다. 하지만 지금은 "이 계정에는 충분한 권한이 부족합니다." 오류가 발생했습니다. 왜 이런 일이 일어날 지 모릅니다. 나는 @Ergin에 의해 몇 가지 해답을 보았는데, 그는 docusign 지원이 도움이 될 수 있다고 언급했다. 나는 그 (것)들을 접촉하는 것을 시도했다, 그러나 그들은 나의 dev 샌드 박스에 모든 허가가 가능하다고 말한다. –
나는 그것이 기쁘다! 새로운 질문을 게시하고 * 요청/응답을 포함 시키십시오 * (그러나 통합 키 및 기타 개인 정보는 삭제하십시오) @AsifBhat –