Authoritative Copy DocuSign REST API

2019-09-09 22:01发布

问题:

Can anyone help me on getting Authoritative copy from DocuSign using REST api call. I am not able to find any resources to get the authoritative copy. Tried using DocuSign SOAP API(JAVA SDK web example). got below error while getting the connection. ul 30, 2013 2:30:46 PM org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromClass INFO: Creating Service {http://www.docusign.net/API/Credential}CredentialSoapService from class net.docusign.credential.CredentialSoap java.lang.NullPointerException at com.sun.xml.bind.v2.model.impl.PropertyInfoImpl.calcXmlName(PropertyInfoImpl.java:287) at com.sun.xml.bind.v2.model.impl.PropertyInfoImpl.calcXmlName(PropertyInfoImpl.java:260) at com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl.getTypes(ElementPropertyInfoImpl.java:100) at com.sun.xml.bind.v2.model.impl.RuntimeElementPropertyInfoImpl.getTypes(RuntimeElementPropertyInfoImpl.java:50) at com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl$1.size(ElementPropertyInfoImpl.java:42) at java.util.AbstractList$Itr.hasNext(Unknown Source) at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:139) at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:49) at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:41) at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:189) at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:204) at com.sun.xml.bind.v2.runtime.JAXBContextImpl$3.run(JAXBContextImpl.java:352) at com.sun.xml.bind.v2.runtime.JAXBContextImpl$3.run(JAXBContextImpl.java:350) at java.security.AccessController.doPrivileged(Native Method) at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:349) at com.sun.xml.bind.v2.runtime.JAXBContextImpl.(JAXBContextImpl.java:215) at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:76) at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:55) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at javax.xml.bind.ContextFinder.newInstance(Unknown Source) at javax.xml.bind.ContextFinder.find(Unknown Source) at javax.xml.bind.JAXBContext.newInstance(Unknown Source) at org.apache.cxf.common.jaxb.JAXBContextCache$2.run(JAXBContextCache.java:267) at org.apache.cxf.common.jaxb.JAXBContextCache$2.run(JAXBContextCache.java:265) at java.security.AccessController.doPrivileged(Native Method) at org.apache.cxf.common.jaxb.JAXBContextCache.createContext(JAXBContextCache.java:265) at org.apache.cxf.common.jaxb.JAXBContextCache.getCachedContextAndSchemas(JAXBContextCache.java:172) at org.apache.cxf.jaxb.JAXBDataBinding.createJAXBContextAndSchemas(JAXBDataBinding.java:464) at org.apache.cxf.jaxb.JAXBDataBinding.initialize(JAXBDataBinding.java:330) at org.apache.cxf.service.factory.AbstractServiceFactoryBean.initializeDataBindings(AbstractServiceFactoryBean.java:86) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.buildServiceFromClass(ReflectionServiceFactoryBean.java:478) at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.buildServiceFromClass(JaxWsServiceFactoryBean.java:690) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.initializeServiceModel(ReflectionServiceFactoryBean.java:540) at org.apache.cxf.service.factory.ReflectionServiceFactoryBean.create(ReflectionServiceFactoryBean.java:252) at org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean.create(JaxWsServiceFactoryBean.java:205) at org.apache.cxf.frontend.AbstractWSDLBasedEndpointFactory.createEndpoint(AbstractWSDLBasedEndpointFactory.java:102) at org.apache.cxf.frontend.ClientFactoryBean.create(ClientFactoryBean.java:90) at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:156) at org.apache.cxf.jaxws.JaxWsProxyFactoryBean.create(JaxWsProxyFactoryBean.java:156) at org.apache.cxf.frontend.ClientProxyFactoryBean.create(ClientProxyFactoryBean.java:93) at net.docusign.sample.CredentialFactory.getCredential(CredentialFactory.java:38) at net.docusign.sample.DocuSignExpore.getToken(DocuSignExpore.java:20) at net.docusign.sample.DocuSignExpore.main(DocuSignExpore.java:25)

回答1:

The SOAP API guide has a few pages that describe how to get the Authoritative Copy. Basically, it's not just one API call but several that you need to make. I'm not sure what's causing the error you've listed above, not enough info to debug, but the following should help you get this working.

The basic idea is that you need to extract the envelope first, then you obtain a key that allows you to decrypt the docs. I believe when you obtain the key is when the envelope is deleted from the source location, so that you now have the one and only authoritative copy.

The following pages explain the calls in detail:

ExportAuthoritativeCopy

AuthoritativeCopyExportDocuments

AcknowledgeAuthoritativeCopyExport

AuthoritativeCopyExportStatus

Also, the following page has some important rules related to Authoritative copy that you should know about

Rules for Authoritative Copy



标签: docusignapi