我在Ruby on Rails应用程序中实现了Docusign。 我试图获取发送文件的状态。 我可以使用像这样的信封ID轻松地逐一获取它。
response = client.get_envelope_recipients(
envelope_id: envelope_id
)
问题是我有一个显示已发送文档列表的页面,我想显示每个文档的状态以及此列表。因此,使用envelope_id逐个获取每个文档的状态是困难且耗时的。
有什么方法可以获取从同一帐户发送的信封列表的状态。 我还想知道是否有一些我可以做的事情,以便在用户签署文档后,它会被重定向到特定的URL(然后我可以在用户签署文档时立即更新数据库)
答案 0 :(得分:1)
是的,DocuSign平台确实允许您在单个API调用中查询一组包络而不是每个信封ID一个一个,您只需要进行正确的API调用。查看Ruby library you have referenced,看起来他们已经包含了这个电话,它被称为get_envelope_statuses
,它可以让您通过日期范围和状态查询信封:
# Public retrieves the statuses of envelopes matching the given query
#
# from_date - Docusign formatted Date/DateTime. Only return items after this date.
#
# to_date - Docusign formatted Date/DateTime. Only return items up to this date.
# Defaults to the time of the call.
#
# from_to_status - The status of the envelope checked for in the from_date - to_date period.
# Defaults to 'changed'
#
# status - The current status of the envelope. Defaults to any status.
#
# Returns an array of hashes containing envelope statuses, ids, and similar information.
def get_envelope_statuses(options={})
content_type = { 'Content-Type' => 'application/json' }
content_type.merge(options[:headers]) if options[:headers]
query_params = options.slice(:from_date, :to_date, :from_to_status, :status)
uri = build_uri("/accounts/#{acct_id}/envelopes?#{query_params.to_query}")
http = initialize_net_http_ssl(uri)
request = Net::HTTP::Get.new(uri.request_uri, headers(content_type))
response = http.request(request)
JSON.parse(response.body)
end
以下是来自DocuSign REST API Documentation的相应API调用。