Skip to navigation

extraction.mapped

Fires once for every mapping of a profit and loss statement onto the chart of accounts: the statement’s first mapping, and each one made again after its extraction, the workspace’s chart of accounts, caption rules or export map, or the mapping logic changed, or the statement was corrected in the workspace. The payload carries ids and versions, not figures. Fetch the mapping from GET /api/borrowers/{borrowerId}/extractions/{docId}/mapping. Sent to workspaces whose plan includes the Statement mapping feature.

Headers

SpreadSpace-SignaturestringRequired

Signature over the exact request body: t=<seconds since the Unix epoch>,v1=<lowercase hex HMAC-SHA256 of "{t}.{body}" keyed with your endpoint's signing secret>. Verify it before trusting the body, and reject a t more than five minutes from your own clock. During a secret rotation both the new and the previous secret verify for 24 hours; each delivery is signed with exactly one.

SpreadSpace-Event-IdstringRequiredformat: "^evt_[0-9a-f]{24}$"

The event id, identical to the body's id. Stable across retries and replays, and shared by every endpoint one event fans out to. Delivery is at-least-once, so dedupe on it.

Payload

The payload of this webhook request is an object.
idstringRequiredformat: "^evt_[0-9a-f]{24}$"

Event id: evt_ plus 24 lowercase hex characters. Also sent as the SpreadSpace-Event-Id header. Stable across retries and replays, so dedupe on it.

typeenumRequired
Always this event type on this body.
Allowed values:
createdlongRequired

Seconds since the Unix epoch at which the event was created server-side. Seconds, not milliseconds. Deliveries are not ordered; reconcile on this.

tenant_idstringRequired
The workspace the event belongs to. Reject a delivery whose tenant does not match the endpoint you registered.
livemodebooleanRequired

true for live activity, false for test mode (an ss_test_ key or the sandbox simulator). Branch on it to route test deliveries to a staging handler.

dataobjectRequired

The data object on an extraction.mapped delivery, sent once for every mapping of a profit and loss statement onto the chart of accounts: the statement's first mapping, and each one made again after its extraction, the workspace's chart of accounts, caption rules or export map, or the mapping logic changed, or the statement was corrected in the workspace.

A pointer, not a payload: ids, versions, two states, a reason and a time, with no figures, no captions and no names. Read the mapping through GET /api/borrowers/{borrower_id}/extractions/{document_id}/mapping, where the caller's own scope and plan apply.

Response

2XX
Return any 2xx within 5 seconds. A 4xx other than 429 stops retries for that delivery. 429, 5xx, network errors and timeouts are retried, up to 12 attempts in all.