GET /documents returns the documents visible to the key owner in the registry,
newest first. The scope is documents:read.
List items carry only the document’s scalar fields: files and route are omitted,
so call GET /documents/{document_id} for those.
Filters
status takes exactly one value: to collect documents in two statuses, make two
requests. Pagination is the shared one, through limit and page_token; there is no
total_count here.
What the list leaves out
So an integrator who only participates needs a different entry point: subscribe todocument.approval_started and document.signing_started and keep the document_id
from those events. The recipe
Approve a document as a participant
walks through it.
What to use instead of polling
Polling the list does not replace events: a document can move through several statuses between two polls. Keep the list for reconciliation and reporting, and build your reactions on document events.Reconciling after downtime
If webhooks were not arriving, fetch everything that changed since the last successful delivery:DOCUMENT_ORDER_UPDATED_AT_ASC order matters: a document that changes mid-walk
moves ahead of your checkpoint instead of slipping past it. Advance the checkpoint by
the update_time of the last record you processed.
Encode a timezone offset in the query as
%2B05:00, or send the time in Z (UTC):
a + in a URL is otherwise read as a space.