---
title: "Read the sealed consolidation worksheet for one scope and period"
method: GET
path: "/companies/{companyId}/reporting-scopes/{reportingScopeId}/worksheet"
tags: ["Company Settings"]
---

# Read the sealed consolidation worksheet for one scope and period

`GET /companies/{companyId}/reporting-scopes/{reportingScopeId}/worksheet`

## Request

- Base URL: `https://api.medianfi.com/api/v1`
- URL: `https://api.medianfi.com/api/v1/companies/{companyId}/reporting-scopes/{reportingScopeId}/worksheet`
- Auth: HTTP bearer

Read-only assembly of the persisted, sealed pre-elimination reporting-scope trial-balance and management rollups, the translated (cumulative translation adjustment) columns, the virtual intercompany elimination, and the non-controlling-interest allocation for one reporting-scope hierarchy version and period, exactly as stored. Requires explicit all-entity access. It never live-computes: any stage that has not been sealed is returned as null, and a scope, sealed version, or sealed period that does not exist returns available:false with an honest reason. Defaults to the latest sealed version and period when versionId or periodEnd are omitted.

## Query parameters

- `versionId` string, uuid
- `periodEnd` string, date

## Response `200`

Sealed consolidation worksheet, or an honest-unavailable envelope

- ReportingScopeWorksheetResponse
  - `success` boolean, required
  - `data` ReportingScopeWorksheet, required: Sealed consolidation worksheet for one reporting scope, hierarchy version, and period. Every non-null stage is a curated projection of a persisted sealed authority — only the figures the read-only worksheet renders. The persisted source/output/fingerprint hashes, constituent snapshot manifests, elimination source projections, and NCI source manifests never cross to the customer payload. A stage that has not been sealed is null. When available is false the reason is populated and the stage fields are null.
    - `available` boolean, required
    - `reason` 'no_consolidation_scope' | 'no_sealed_version' | 'no_sealed_worksheet' | 'null', nullable, required: Honest-unavailable reason. no_consolidation_scope = the scope does not exist for this company; no_sealed_version = no sealed hierarchy version; no_sealed_worksheet = the version (or requested period) has no sealed rollup authority. Null when available is true.
    - `scope` ReportingScope, required: A read-only consolidated reporting identity within one company. It is not a legal entity and cannot own postings, integrations, schedules, AR/AP items, Forecast state, or any other accounting fact.
      - `id` string, uuid, required
      - `companyId` string, uuid, required
      - `kind` 'consolidated', required
      - `label` string, required
      - `rootEntityId` string, uuid, required: The company's one persisted primary legal entity.
      - `createdByUserId` string, uuid, nullable, required
      - `createdAt` string, date-time, required
      - `retiredAt` string, date-time, nullable, required
    - `version` ReportingScopeVersion, required
      - `id` string, uuid, required
      - `reportingScopeId` string, uuid, required
      - `companyId` string, uuid, required
      - `effectiveFrom` string, date, required
      - `effectiveTo` string, date, nullable, required
      - `presentationCurrency` string, required
      - `createdByUserId` string, uuid, required
      - `createdAt` string, date-time, required
      - `sealedAt` string, date-time, required
      - `entities` ReportingScopeVersionEntity[], required
        - `entityId` string, uuid, required
        - `parentEntityId` string, uuid, nullable, required
        - `ownershipPct` number, required
        - `consolidationMethod` 'full' | 'equity' | 'proportional', required
    - `period` ReportingScopeWorksheetPeriod, required
      - `periodStart` string, date, required
      - `periodEnd` string, date, required
      - `presentationCurrency` string, required
      - `glPeriodId` string, uuid, nullable, required
    - `trialBalanceRollup` WorksheetTrialBalanceRollup, required: Curated pre-elimination reporting-scope trial-balance rollup: only the per-entity contributions and the pre-elimination rollup figures the worksheet renders. Per-line journal-line ids, rate keys, constituent snapshot ids, and the source/output/fingerprint hashes are dropped.
      - `periodEnd` string, date, required
      - `payload` object, required
        - `lines` object[], required
          - `sourceKind` 'account' | 'translation_adjustment', required
          - `code` string, nullable, required
          - `name` string, required
          - `reportSection` string, required
          - `reportSectionLabel` string, required
          - `presentationEndingBalanceCents` integer, required
          - `contributions` object[], required
            - `entityId` string, uuid, required
            - `presentationEndingBalanceCents` integer, required
        - `totals` WorksheetControlTotals, required
          - `debitCents` integer, required
          - `creditCents` integer, required
          - `differenceCents` integer, required
    - `profitAndLoss` WorksheetRollup, required: Curated pre-elimination management P&L or balance-sheet rollup: per-entity contributions, the pre-elimination line total, constituent net totals, and the report totals. Constituent snapshot ids/hashes and per-line source account identifiers are dropped.
      - `reportType` 'profit_and_loss' | 'balance_sheet', required
      - `payload` object, required
        - `constituents` object[], required
          - `entityId` string, uuid, required
          - `totals` object, required
        - `lines` object[], required
          - `code` string, nullable, required
          - `name` string, required
          - `reportSection` string, required
          - `reportSectionLabel` string, required
          - `presentationAmountCents` integer, required
          - `contributions` object[], required
            - `entityId` string, uuid, required
            - `presentationAmountCents` integer, required
        - `totals` object, required
    - `balanceSheet` WorksheetRollup, required: Curated pre-elimination management P&L or balance-sheet rollup: per-entity contributions, the pre-elimination line total, constituent net totals, and the report totals. Constituent snapshot ids/hashes and per-line source account identifiers are dropped.
      - `reportType` 'profit_and_loss' | 'balance_sheet', required
      - `payload` object, required
        - `constituents` object[], required
          - `entityId` string, uuid, required
          - `totals` object, required
        - `lines` object[], required
          - `code` string, nullable, required
          - `name` string, required
          - `reportSection` string, required
          - `reportSectionLabel` string, required
          - `presentationAmountCents` integer, required
          - `contributions` object[], required
            - `entityId` string, uuid, required
            - `presentationAmountCents` integer, required
        - `totals` object, required
    - `translationAdjustment` WorksheetTranslationAdjustment, required: Curated cumulative-translation-adjustment authority: per-entity translation differences (functional currency, closing rate, difference) and the cumulative CTA. Rate ids/revisions, snapshot ids, and hashes are dropped.
      - `payload` object, required
        - `contributions` object[], required
          - `entityId` string, uuid, required
          - `functionalCurrency` string, required
          - `closingRate` string, required
          - `translationDifferenceCents` integer, required
        - `cumulativeTranslationAdjustmentCents` integer, required
    - `eliminations` union, required
      - WorksheetActiveEliminations: The applied intercompany elimination with the sealed per-account deltas.
        - `status` 'active', required
        - `direction` 'eliminate', required
        - `matchIds` string[], required
        - `payload` object, required
          - `lines` object[], required
            - `code` string, nullable, required
            - `name` string, required
            - `eliminationDeltaCents` integer, required
          - `totals` object, required
            - `debitCents` integer, required
            - `creditCents` integer, required
      - WorksheetReversedEliminations: A terminal reversed intercompany-elimination authority. The most recently sealed snapshot for the period is a reversal, so no elimination is applied and no live deltas are returned; the worksheet renders "eliminations reversed for this period".
        - `status` 'reversed', required
        - `direction` 'reverse', required
        - `matchIds` string[], required
    - `nci` WorksheetNci, required: Curated non-controlling-interest attribution: the sealed per-subsidiary debit/credit control totals and NCI share, plus the revision. The source manifest (journal-line ids, snapshot ids, rate keys) and per-adjustment allocation/line detail are dropped.
      - `revision` integer, required
      - `adjustments` object[], required
        - `subsidiaryEntityId` string, uuid, required
        - `nonControllingOwnershipPercentage` string, required
        - `currency` string, required
        - `totalDebit` string, required
        - `totalCredit` string, required

## Other responses

- `401`: Authentication required
- `403`: Insufficient permissions or not a company member
- `404`: Resource not found
- `422`: Request failed validation

---

[API](https://skmtc.dev/medianfi/apis/median-api.md) · [All operations](https://skmtc.dev/medianfi/apis/median-api/llms.txt) · [OpenAPI document](https://skmtc.dev/medianfi/apis/median-api/revisions/20090ea32b0d?raw)
