---
title: "Historical score snapshots + per-dimension drift (Starter+)."
method: GET
path: "/entities/{entityId}/score-history"
tags: ["Layer 1 — Profile"]
---

# Historical score snapshots + per-dimension drift (Starter+).

`GET /entities/{entityId}/score-history`

## Request

- Base URL: `https://entidex.com/api/v1`
- URL: `https://entidex.com/api/v1/entities/{entityId}/score-history`
- Auth: HTTP bearer

Time-series snapshots for the four headline signals (AI Visibility, Sentiment, Share of Voice, Trust Stack) and the two secondary derived insights (Narrative Coverage, Entity Maturity). Each dimension returns the dated snapshots plus current / previous / delta / trend over the lookback window. Tier gate: layer_1_profile.

## Path parameters

- `entityId` string, required

## Query parameters

- `dimension` string
- `days` integer

## Response `200`

OK

- object
  - `data` ScoreHistoryResponse: Per-dimension score history over the requested lookback window. Drift figures compare the most recent snapshot to the one before it.
    - `entityId` string, required: Canonical entity slug (mirrors the URL entityId).
    - `days` integer, required: Resolved lookback window (1–90).
    - `dimensions` object, required: Map of ScoreDimension → series.
  - `meta` ResponseMeta
    - `requestId` string, required
    - `timestamp` string, date-time, required
    - `apiVersion` string, required
    - `pagination` object
      - `cursor` string, nullable
      - `hasMore` boolean
      - `limit` integer
    - `rateLimit` object
      - `limit` integer
      - `remaining` integer
      - `resetAt` string, date-time
    - `billing` object
      - `creditsUsed` integer
      - `creditsRemaining` integer, nullable
      - `tier` 'free' | 'layer_0_discovery' | 'layer_1_profile' | 'layer_2_insight' | 'layer_3_drift' | 'layer_4_cohort'
      - `allowedLayers` integer[]: Cumulative layer ladder unlocked by this key (0=discovery … 4=cohort). free → []; layer_2_insight → [0,1,2].
      - `mode` 'demo' | 'free' | 'payg' | 'keyed': How the caller is billed: demo (feedback-loop key), free (monthly allowance), payg (Developer PAYG), keyed (paid subscription).
  - `errors` ApiError[]
    - `code` 'ENTITY_NOT_RESOLVED' | 'ENTITY_NOT_FOUND' | 'INVALID_PARAMETER' | 'RATE_LIMITED' | 'INSUFFICIENT_CREDITS' | 'TIER_NOT_AVAILABLE' | 'UNAUTHENTICATED' | 'FORBIDDEN' | 'INTERNAL_ERROR', required
    - `message` string, required
    - `field` string
    - `candidates` object[]

---

[API](https://skmtc.dev/entidex/apis/entidex-api.md) · [All operations](https://skmtc.dev/entidex/apis/entidex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/entidex/apis/entidex-api/revisions/86b92f21a09a?raw)
