Get attribute snapshot
Authentication
Path parameters
Headers
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-07-19.
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.
Response
Per-loan version number, counting up across every status.
final (what an analyst approved at finalize),
machine (the same loan built from the documents alone, with no
analyst input) or draft (the latest autosave).
The figures, in the attributes.v1 payload schema:
the fiscal periods, the named attributes and ratios keyed over them,
and the analyst inputs that shaped them. Stored opaque and returned as
stored; the name-by-name catalog is on the Spreads page in the API
docs. An API key receives values only, with source-provenance geometry
stripped at every depth.
What the payload was built from: the documents it drew on, a count-level summary of the analyst inputs, the entity scope, and when it was built. Stored opaque, documented alongside the payload on the Spreads page, and stripped of source-provenance geometry for an API key like the payload is.
When the analyst finalized. Set on final snapshots
only.
Display name of the analyst who finalized the spread
(final and machine snapshots); null on drafts and for
callers who may not see names.
The external_user_id your embed session named for the analyst who
finalized. It is your own identifier for that user, not a person’s name,
so it is returned to every caller and a backend can join it to its own user
table. Null on drafts, and null when the finalize happened in the
SpreadSpace workspace or under an embed session that named no user.