Skip to navigation

Retrieve a profit loss statement

Retrieves a single extracted profit loss statement. Requesting a document of any other type returns a 404.

Requires the extractions:read scope. Rate limit: 200 requests per minute per key (the api lane).

Authentication

AuthorizationBearer

Bearer token. Use ss_live_… for live data or ss_test_… for the sandbox (test mode). See Authentication.

Path parameters

borrower_idstringRequired
The borrower's id.
doc_idstringRequired
The document's id.

Headers

SpreadSpace-VersionstringOptionalformat: "^\d{4}-\d{2}-\d{2}$"

Pin the API version, e.g. 2026-10-07. Omit to get the latest. See Versioning.

Response headers

X-Request-IDstringOptional
Correlation ID for this request. Quote it in support tickets.
SpreadSpace-VersionstringOptional

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.

RateLimit-Limitinteger

Request budget of the endpoint’s rate-limit policy per 60-second sliding window. See Rate limits.

RateLimit-Remaininginteger

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.

RateLimit-Resetinteger

Seconds until a guaranteed-fresh window.

RateLimit-PolicystringOptional

The active policy in limit;w=window-seconds form.

Response

OK
entitystring or null
The reporting entity's name as printed.
titlestring or null
The statement's printed title.
periodstring or null
The reporting period as printed in the heading.
period_sourcestring or null

Which part of the document states the reporting period: the printed heading (printed), the date the statement was printed on (print_stamp), a year the heading prints alone (year_only, the period being that year’s end), the page image (page_image), the file’s name (filename) or the file’s own creation date (file_metadata); null when none of these dates the statement.

periodslist of objects
The statement's figure columns, one entry per column.
billing_yearsinteger

Years of data billed: the distinct years among columns that print a non-zero figure; 0 when no column prints one (such a document is not billed).

columnsinteger
Number of figure columns.
lineslist of objects
The printed lines in order.
entity_sourcestringOptional

What names the entity when the statement’s own page does not: the page image (page_image), the filing’s cover page (filing_cover), or the opening pages of the financial statement packet the statement arrived in (packet_text); absent when the statement’s own page names it.

entity_source_sheetstringOptional

The sheet of the uploaded workbook that names the company, when this statement’s own sheet does not and the workbook names exactly one company; absent otherwise.

reporting_unitenumOptional

The unit the figures are printed in; on the wire the figures are already whole dollars.

Allowed values:
scale_multiplierintegerOptional>=1

Scale of the printed figures: 1 for whole dollars, 1000 when the statement is stated in thousands, 1000000 when it is stated in millions, 1000000000 when it is stated in billions.

unit_exceptionslist of stringsOptional

The carve-outs the statement’s unit declaration lists, such as per share amounts, whose lines and columns keep their printed figures; empty when it lists none.

unit_sourceenumOptional

Where the statement states its unit: printed when the statement header, a column header or a heading line prints it; none when nothing is printed and the figures are whole dollars as printed.

Allowed values:
component_columnslist of objectsOptional
The columns the statement prints beside a total as its parts, such as one per class or location, when it prints any.
entity_splitobjectOptional

Which part of a page whose columns are separate companies this statement is; absent on every other statement.

canonicalobjectOptional
The printed lines mapped onto standard line names.
per_shareobjectOptional

The per-share block printed under the bottom line, when the statement prints one: earnings per share and weighted-average shares, basic and diluted, one row each as printed.

supplementalobjectOptional

The rows printed under the bottom line besides the per-share block, when the statement prints any: other comprehensive income, a retained earnings roll-forward, supplemental lines.

cpa_engagementintegerOptional0-3

The accountant’s level of assurance: 0 unaudited, 1 compiled, 2 reviewed, 3 audited.

cpa_engagement_labelstringOptional
The assurance level in words.
presentationenumOptional

How the statement is presented: formal when it is presented as issued financial statements (a CPA engagement stated, a reference to the notes to the financial statements, a per-share block, the supplemental cash flow disclosures, the preparation legend that no assurance is provided, a plural statement title such as balance sheets or statements of income, or a statement of changes in equity or plural statement titles in the packet it arrived in); free_form when it is a report out of the books (accounting software or a spreadsheet).

Allowed values:
signalslist of objectsOptional
Notes about the statement's reporting period, when any.
packetobjectOptional
Where the statement sat in the financial statement packet it arrived in, when it arrived in one.
summaryobjectOptional

The statement’s headline figures, on the single-document read.

Errors

400
Bad Request Error
401
Unauthorized Error
402
Payment Required Error
403
Forbidden Error
404
Not Found Error
429
Too Many Requests Error
500
Internal Server Error