2013-07-18 13 views
0

Мы перенесли из API SOAP API REST и попытались «Добавить/удалить получателей на существующем конверте».Поддерживает ли API SOAP API CorrectAndResendEnvelope API REST?

Мы используем метод CorrectAndResendEnvelope и свойство RecipientCorrection в SOAP API. Есть ли соответствующий REST API для этого метода и свойства?

Попытка сделать что-то подобное в REST:

DocuSignWeb.Correction correction = new DocuSignWeb.Correction(); 

correction.RecipientCorrections[0] = new DocuSignWeb.RecipientCorrection(); 

correction.RecipientCorrections[0].PreviousUserName = pOldName; 
correction.RecipientCorrections[0].CorrectedUserName = pNewName; 

correction.RecipientCorrections[0].PreviousEmail = pOldEmail; 
correction.RecipientCorrections[0].CorrectedEmail = pNewEmail; 

correction.RecipientCorrections[0].PreviousRoutingOrder = pOldRoutingOrder; 
correction.RecipientCorrections[0].CorrectedRoutingOrder = pNewRoutingOrder; 

correction.RecipientCorrections[0].Resend = true; 
correction.RecipientCorrections[0].ResendSpecified = true; 

DocuSignWeb.CorrectionStatus correctionStatus = _apiClient.CorrectAndResendEnvelope(correction); 

Спасибо за ваш ответ, я новичок в REST и продолжать получать Bad Request 400 Ответ на код ниже:

У меня есть стандартный baseURL и authenticateStr из другого образца ...

_recipientID, pNewEmail, pNewName и pNewRoutingOrder передаются как параметры процедур.

строка envDef = "HTTP: //www.docusign.com/restapi \">»+ "" + "" + "" + _recipientId + "" + "" + pNewEmail + "" + "" + pNewName + "" + "" + pNewRoutingOrder + "" + "" + "" + "";

  url = baseURL + "/envelopes/" + pEnvelopeID + "/recipients"; 
      request = (HttpWebRequest)WebRequest.Create(url); 
      request.Headers.Add("X-DocuSign-Authentication", authenticateStr); 
      request.ContentType = "application/xml"; 
      request.Accept = "application/xml"; 
      request.ContentLength = envDef.Length; 
      request.Method = "PUT"; 
      // write the body of the request 
      byte[] body = System.Text.Encoding.UTF8.GetBytes(envDef); 
      Stream dataStream = request.GetRequestStream(); 
      dataStream.Write(body, 0, envDef.Length); 
      dataStream.Close(); 
      // read the response 
      webResponse = (HttpWebResponse)request.GetResponse(); 
      sr.Close(); 

      responseText = ""; 
      sr = new StreamReader(webResponse.GetResponseStream()); 
      responseText = sr.ReadToEnd(); 
+0

Я думаю, что есть в настоящее время ошибки в системе при использовании формата XML с этим конкретным вызовом API (например, с исправлением информации получателя). JSON, который я опубликовал ниже, работает, я отправлю сюда, как только я знаю, что версия XML исправлена ​​для этого ... – Ergin

ответ

0

Да, вы определенно можете сделать это с помощью REST API, а также Пожалуйста, ознакомьтесь с документацией API REST, так как он expl AINS, как это сделать:

DocuSign Documentation

Открыть либо онлайн-версию или загрузить PDF для REST API, и сделать поиск «отправить», и вы увидите две страницы, которые покажут вам, как изменить существующий конверты и повторно отправить их. Вызов вы будете делать, выглядит так:

PUT https://{server}/restapi/{apiVersion}/accounts/{accountId}/envelopes/{envelopeId}/recipients 

X-DocuSign-Authentication: <DocuSignCredentials><Username>{name}</Username><Password>{password}</Password><IntegratorKey>{integrator_key}</IntegratorKey></DocuSignCredentials> 
Accept: application/json 
Content-Type: application/json 
{ 
    "signers" : 
    [ 
    { 
    "email": "new_email_address", 
    "name": "new_name", 
    "recipientId": "1" 
    } 
] 
} 

Чтобы отправить конверт после его изменений вы хотите добавить параметр URL в URL:

?resend_envelope=true 
Смежные вопросы