> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rangler.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Exact reported tables

> Retrieve the issuer's printed statement rows and columns when standardized metrics are not enough.

Reported-table endpoints preserve the source-table structure extracted from a filing. Use them for exact issuer labels, multi-column statements, statements of changes in equity, and rows that do not match a standard metric.

For the three primary statements, start with a ticker or company UUID:

```http theme={null}
GET /v1/company/financials/income-statement/as-reported?company=ACCESSCORP&countryCode=NG
GET /v1/company/financials/balance-sheet/as-reported?company=ACCESSCORP&countryCode=NG
GET /v1/company/financials/cash-flow-statement/as-reported?company=ACCESSCORP&countryCode=NG
```

These routes return the stored source-table rows, rather than the standardized financial projection. They do not expose a standard metric mapping and do not rename, merge, calculate, convert, or rescale the printed cells. A cell keeps its literal `raw_text`; `numeric_value` is the parsed number before the column's `value_scale` is applied.

```json theme={null}
{
  "label": "Profit before taxation",
  "cells": [
    {
      "raw_text": "824,754",
      "numeric_value": 824754.0,
      "source_region": {
        "page_number": 4,
        "row_index": 12,
        "column_index": 2
      }
    }
  ]
}
```

Use `filingId` to limit a focused as-reported request to one filing. Omit it to retrieve the latest available history.

Use the table index and company-ID routes below when you need to choose a filing first, retrieve a statement of changes in equity, or request a specific table.

## 1. List available tables

```http theme={null}
GET /v1/companies/{company_id}/statement-table-index?statement_type=changes_in_equity
```

The index is a lightweight discovery response. Use it to select a filing, reporting scope, statement type, and table before retrieving all values.

Example response from the Access Holdings income statement index:

```json theme={null}
{
  "company_id": "efa534f5-3b01-4f12-a33b-3c797b05beee",
  "items": [
    {
      "filing_id": "20414188-1ffa-4940-8701-4c5260095bdd",
      "filing_published_at": "2026-05-01T01:16:16Z",
      "statement_type": "income_statement",
      "first_page_number": 4,
      "primary_period_end_date": "2026-03-31",
      "primary_period_basis": "3M",
      "source_label": "31 Mar 2026 financial statements",
      "context_label": "31 Mar 2026 · Group / Company · NGN millions · page 4",
      "is_latest_filing": true
    }
  ]
}
```

## 2. Load a table

```http theme={null}
GET /v1/companies/{company_id}/statement-tables?filing_id={filing_id}&statement_type=changes_in_equity
```

The response retains the table's reported headers, row labels, values, page, scope, currency, and printed unit metadata where available.

A reported value exposes both the literal filing value and its scaled analytical value:

```json theme={null}
{
  "value_id": "cf90e85d-5b67-5694-b4cb-4d3160e94656",
  "raw_text": "824,754",
  "raw_numeric_value": 824754.0,
  "scaled_numeric_value": 824754000000.0,
  "display_unit": "currency",
  "display_currency": "NGN",
  "statement_cell_id": "7bedde51-616c-518b-a5aa-e794f231f410",
  "source_region": {
    "row_index": 1,
    "page_number": 4,
    "column_index": 2,
    "source_artifact_id": "98496f91-7f04-4c91-a1a1-2b750cdc8b0f"
  }
}
```

The containing column reports `value_scale = "millions"`, so `824,754` becomes `824754000000` base NGN units. Do not apply that scale a second time.

## 3. Retrieve source evidence

```http theme={null}
GET /v1/companies/{company_id}/statement-table-values/{value_id}/source
```

The source response is `image/png`. Use the returned value ID from the reported table; do not substitute a standardized statement cell ID.

The source endpoint can succeed even when exact geometry is unavailable. Treat a geometry `404` as “no safe rectangle located,” not “no filing evidence.”

## Standardized versus reported

| Standardized statements | Reported tables |
| - | - |
| Stable concepts across issuers | Exact labels used by this issuer |
| One metric map per period | Original rows and multi-column layout |
| Ratios and derived periods | Reported values and printed context |
| Best for models and screening | Best for audit, display, and unnormalized rows |

Both forms link to the same filing sources but serve different needs. Do not rebuild an exact statement by mapping standard metric labels back to the issuer's wording; retrieve its reported table directly.

<Warning>
  Printed headers may contain merged cells, abbreviations, or filing-specific wording. Treat them as source text, not standard metric names.
</Warning>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.