---
title: "Current incremental MRR publication state"
method: GET
path: "/companies/{companyId}/metrics/mrr-state"
tags: ["Overview"]
---

# Current incremental MRR publication state

`GET /companies/{companyId}/metrics/mrr-state`

## Request

- Base URL: `https://api.medianfi.com/api/v1`
- URL: `https://api.medianfi.com/api/v1/companies/{companyId}/metrics/mrr-state`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Reads one concrete authorized entity. entityId is required; membership and entity scope are enforced. Returns a persisted current recurring run-rate revision, separate from completed-month MRR and movement history. This read performs no provider requests, refresh, publication or financial writes. enabled is presentation permission, not evidence of freshness. An unavailable or withheld current value is null, never fabricated zero. No historical coverage is inferred. Responses use Cache-Control private, no-store.

## Query parameters

- `entityId` string, uuid, required

## Response `200`

Current state, freshness metadata and separately unavailable history.

- MrrCurrentStateResponse
  - `success` true, required
  - `data` MrrCurrentStateData, required
    - `contract` 'median.mrr_current_state', required
    - `contractVersion` 1, required
    - `companyId` string, uuid, required
    - `entityId` string, uuid, required
    - `enabled` boolean, required: home_saas_metrics presentation permission; does not establish current-data readiness.
    - `enrolled` boolean, required: An incremental enrollment exists. Suspended enrollment does not authorize a classic-current fallback.
    - `mode` 'incremental' | 'null', nullable, required
    - `state` 'initializing' | 'live' | 'catching_up' | 'stale' | 'unavailable', required
    - `reason` string, nullable, required: Customer-safe readiness reason, or null when no reason is needed. Internal provider identities and payloads are never included.
    - `revision` string, nullable, required: Exact entity publication revision, without floating-point conversion.
    - `readAt` string, date-time, required
    - `current` MrrCurrentBlock, required
      - `asOf` string, date-time, required: UTC publication time of this revision, not a completed-month accounting as-of.
      - `currency` string, required
      - `minorUnitExponent` integer, required
      - `currentMinorUnits` string, required: Exact normalized current recurring run-rate in currency minor units.
      - `projectedMinorUnits` string, required
      - `contractedMinorUnits` string, required
      - `payingSubscriptionCount` integer, required
      - `activeSubscriptionCount` integer, required
      - `activeCustomerCount` integer, required
      - `intervalSplit` MrrCurrentIntervalRow[], required
        - `key` 'monthly' | 'annual' | 'other', required
        - `mrrMinorUnits` string, required
        - `subscriptionCount` integer, required
    - `freshness` MrrCurrentFreshness, required
      - `publishedAt` string, date-time, nullable, required
      - `recoveryCompletedThrough` string, date-time, nullable, required: Oldest completed recovery frontier; null if any source frontier is unknown.
      - `oldestPendingReceivedAt` string, date-time, nullable, required
      - `pendingWorkCount` integer, required
      - `pendingWorkCountIsLowerBound` boolean, required: True when the reader capped the count; the actual backlog is at least this value.
      - `heldWorkCount` integer, required
      - `baselineCompletedAt` string, date-time, nullable, required: Completion time of the baseline provider walk; null when no completed walk is recorded.
      - `lastReconciledAt` string, date-time, nullable, required: Null when no independently recorded reconciliation time is available.
    - `history` object, required
      - `status` 'unavailable', required
      - `reason` 'not_proven', required
      - `completeFrom` unknown, required

## Other responses

- `401`: Authentication required
- `403`: Insufficient permissions or not a company member
- `404`: Current-state service is unavailable, or the selected company/entity does not exist in scope.
- `422`: Request failed validation
- `503`: Legal-entity scope or current-state read authority could not be established.

---

[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)
