对 DocuSign REST API“获取信封收件人状态”调用 (GET /accounts/{accountId}/envelopes/{envelopeId}/recipients) 的响应将包含信封所有收件人的收件人状态信息。DocuSign REST API 指南 ( http://www.docusign.com/sites/default/files/REST_API_Guide_v2.pdf ) 的第 145-146 页显示了示例请求和响应(JSON 格式)。
这是具有 4 个收件人的信封的示例响应正文: 1) Jane 签署/完成了信封(路由顺序 #1)。2) John 签署/填写了信封(路由顺序 #2)。3) Jimmy 收到了一份信封副本,作为复本收件人(路由订单#3)。4) Abe 拒绝了信封(路由命令#4)。
{
"signers": [
{
"signInEachLocation": "false",
"name": "Abe Miller",
"email": "emailAbe@outlook.com",
"recipientId": "ea3362b6-cf00-4797-8cfb-56ca09b988a8",
"requireIdLookup": "false",
"userId": "5b97e1be-3cea-49fb-a1c3-b77890b0b154",
"routingOrder": "4",
"status": "declined",
"declinedDateTime": "2013-09-23T19:28:40.7670000Z",
"declinedReason": "I don't want to sign."
},
{
"signInEachLocation": "false",
"name": "Jane Smith",
"email": "emailJane@outlook.com",
"recipientId": "54fb0d38-7c60-4d37-976a-6c72ea2ce32d",
"requireIdLookup": "false",
"userId": "17f820b1-f2a0-455a-88c2-e356a9c6914b",
"routingOrder": "1",
"status": "completed",
"signedDateTime": "2013-09-23T19:27:54.2330000Z",
"deliveredDateTime": "2013-09-23T19:27:49.9900000Z"
},
{
"signInEachLocation": "false",
"name": "John Doe",
"email": "emailJohn@outlook.com",
"recipientId": "78ef67bf-8795-4026-a57e-63ec960eb5a4",
"requireIdLookup": "false",
"userId": "03c8a856-c0ae-41bf-943d-ac6e92db66a8",
"routingOrder": "2",
"status": "completed",
"signedDateTime": "2013-09-23T19:28:11.6900000Z",
"deliveredDateTime": "2013-09-23T19:28:06.4170000Z"
}
],
"agents": [],
"editors": [],
"intermediaries": [],
"carbonCopies": [
{
"name": "Jimmy Adams",
"email": "emailJimmy@outlook.com",
"recipientId": "afc51052-85e9-4575-8c06-b0f87c1a5d8b",
"requireIdLookup": "false",
"userId": "7a64f726-8985-490b-9e94-04e54292f53c",
"routingOrder": "3",
"status": "completed",
"deliveredDateTime": "2013-09-23T19:28:21.3600000Z"
}
],
"certifiedDeliveries": [],
"inPersonSigners": [],
"recipientCount": "4"
}
By iterating through the recipients of each type in the response (signers, agents, editors, intermediaries, carbonCopies, certifiedDeliveries, inPersonSigners), you can access status information for each individual recipient.
(Note: if you're using the DocuSign REST API, I'd recommend that you consider using JSON instead of XML. While the DocuSign REST API technically supports both JSON and XML, the documentation available for using XML with the REST API is extremely limited -- you'll save yourself time and frustration by using JSON instead of XML, since a majority of the code samples and documentation DocuSign produces is in JSON.)