我正在尝试切换到Docusign的生产API。当我提交所需的20个信封进行批准时,它们将不会获得批准。我收到了一个列出多个GET
请求的日志文件。它违反了API规则,根据文档,每个信封每15分钟仅允许一个GET
请求。 (https://developers.docusign.com/esign-rest-api/guides/resource-limits)
当我列出信封并多次遍历信封以取出文档时。我对同一个信封执行了多个GET
请求,这就是为什么我认为我遇到了速率限制错误。
在下面的示例中,您可以看到,在检索信封时,我立即循环浏览了信封中的文档,并按照文档中所述的getDucument
方法获取了文档。 (https://developers.docusign.com/esign-rest-api/code-examples/get-an-envelope-document-list)
public function getEnvelopeDocument ($envelopeId)
{
$documents = $this->envelopeApi->listDocuments(config('docusign.id'), $envelopeId);
try {
foreach($documents->getEnvelopeDocuments() as $document)
{
$docs[] = $this->envelopeApi->getDocument((config('docusign.id')), $document->getDocumentId(), $envelopeId);
}
} catch (ApiException $e){
dd("Error connecting Docusign : " . $e->getResponseBody()->errorCode . " " . $e->getResponseBody()->message);
}
}
我违反了API速率限制器吗?如果是这样,将允许使用什么方式来检索信封中的文档。
答案 0 :(得分:3)
我对代码的解释是,您正在依次执行以下调用:
GET /envelopes/{envelopeId}/documents
-ListDocuments
GET /envelopes/{envelopeId}/documents/1
-获取文档1
GET /envelopes/{envelopeId}/documents/2
-获取文档2
,依此类推。
在这种情况下,您没有违反API限制。如果要在15分钟内两次调用ListDocuments或单个文档之一,那将是轮询违规。
为确认所有内容均可接受,您可以捕获API日志以确认仅击中每个唯一端点一次。有关API日志的信息,请参见:https://support.docusign.com/guides/ndse-user-guide-api-request-logging