docusignapi — Как повторно инициализировать API-интерфейс PHP Docusign с другими учетными данными

У нас есть случай, когда нам нужно проверить статус конверта в двух отдельных учетных записях Docusign. Если мы не получаем статус в первом, мы хотим проверить второе.

У меня проблемы с получением API для повторной инициализации с учетными данными нашего второго аккаунта. Я вызываю этот фрагмент с новыми переменными:

require_once('docusign/SignatureApi.php');
$IntegratorsKey = "abcd";
$UserID = "[email protected]";
$Password = "xxxxx";
$_apiEndpoint = $Endpoint;
$_apiWsdl = "docusign/api/APIService.wsdl";
$api_options =  array('location'=>$_apiEndpoint,'trace'=>true,'features' => SOAP_SINGLE_ELEMENT_ARRAYS);
$api = new APIService($_apiWsdl, $api_options);
$api->setCredentials("[" . $IntegratorsKey . "]" . $UserID, $Password);

$res = RequestEnvelopStatuses($envelopes);
$envelopeStatuses = $res->RequestStatusesResult;

if(!count($envelopeStatuses->EnvelopeStatuses->EnvelopeStatus)){
// If we did not find envelopes, check other account
$IntegratorsKey = "wxyz";
$UserID = "[email protected]";
$Password = "xxxxx";
$api->setCredentials("[" . $IntegratorsKey . "]" . $UserID, $Password);
// retry request
$res = RequestEnvelopStatuses($envelopes);
$envelopeStatuses = $res->RequestStatusesResult;
}

Он не возвращает ошибку, но также не возвращает статус конверта. Кажется, все еще используют первые учетные данные (догадываясь). Вторая попытка всегда, кажется, возвращает то, что сделала первая попытка.

Есть ли лучший / предпочтительный способ сделать это?

0

Решение

Это не похоже на правильный способ получить статус конверта. Может быть, поэтому вы не находите их и не пытаетесь посмотреть снова?

// Create a filter using account ID and today as a start time
$envStatusFilter = new EnvelopeStatusFilter();
$envStatusFilter->AccountId = $AccountID;
$beginDateTime = new EnvelopeStatusFilterBeginDateTime();
$beginDateTime->_ = todayXsdDate(); // note that this helper function
// is in CodeSnippets/include/utils.php
// in the PHP SDK
$envStatusFilter->BeginDateTime = $beginDateTime;

// Send
$requestStatusesparams = new RequestStatuses();
$requestStatusesparams->EnvelopeStatusFilter = $envStatusFilter;
$response = $api->RequestStatuses($requestStatusesparams);
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]