Generate presigned URL
Signs a one-time upload URL for one file and creates the job that tracks it. loan_id is required. A declared file size over 250 MB is rejected, and a PDF over 1,500 pages is refused when processing starts.
Requires the documents:write scope. Rate limit: 1000 requests per minute per key (the upload lane).
Authentication
Bearer token. Use ss_live_… for live data or ss_test_… for the sandbox (test mode). See Authentication.
Headers
Pin the API version, e.g. 2026-10-07. Omit to get the latest. See Versioning.
Request
Optional consistency check. When supplied it must be the loan’s owning borrower; a mismatch is rejected with 400 borrower_loan_mismatch. Omit it and the loan’s borrower is used.
SHA-256 hex digest of the file, computed client-side. Used for within-loan duplicate detection.
Response headers
The API surface version the server resolved for this request. Always present, regardless of whether the client supplied the request-side SpreadSpace-Version header. Default: 2026-10-07.
Request budget of the endpoint’s rate-limit policy per 60-second sliding window. See Rate limits.
Requests left in the current window. Suppressed on 429 responses produced outside the rate limiter (for example a usage throttle), where a remaining budget would be misleading.
Seconds until a guaranteed-fresh window.
The active policy in limit;w=window-seconds form.