---
title: "Live in-session fantasy score"
method: GET
path: "/v1/fantasy/session/{sessionId}/scores"
tags: ["Fantasy"]
---

# Live in-session fantasy score

`GET /v1/fantasy/session/{sessionId}/scores`

## Request

- Base URL: `https://api.racehooks.io`
- URL: `https://api.racehooks.io/v1/fantasy/session/{sessionId}/scores`
- Auth: API key in header `Authorization`

Returns a running (provisional) fantasy score for each driver while a session is live, computed from the current running order and retirements. Position, teammate and DNF components update live; grid-based and fastest-lap components are finalised once the session ends (use the race scores endpoint for the final breakdown). Returns an empty list with a message when no live session is active for this id. A session from a season with no scoring ruleset returns 400 SEASON_NOT_SUPPORTED; an id that matches no session returns 404 SESSION_NOT_FOUND.

## Path parameters

- `sessionId` string, required

## Response `200`

Default Response

- object
  - `data` object
    - `sessionId` string
    - `live` boolean
    - `provisional` boolean
    - `sessionType` 'grand_prix' | 'sprint'
    - `currentLap` integer
    - `totalLaps` integer
    - `scores` object[]
      - `driver` string
      - `assetId` string: The priced asset: identical to `id` in GET /v1/fantasy/prices and to `assetId` in the fantasy.scores feed (the driverId, or <driverId>@<constructorId> for a mid-season seat priced separately).
      - `constructorId` string: Canonical team slug for this race's entry: the key GET /v1/fantasy/prices uses for constructors.
      - `tla` string
      - `team` string
      - `breakdown` object
        - `racePosPoints` integer: Finishing-position points from the table (Grand Prix or Sprint scale).
        - `qualiPosPoints` integer, nullable: Qualifying-position points. null when no qualifying result is available, or on a Sprint / live session.
        - `q3Bonus` integer, nullable: Always 0: the game has no driver Q2/Q3 bonus (the constructor bonus is under constructors). null when qualifying data is unavailable.
        - `positionsGained` integer, nullable: Raw places gained (grid - finish); negative when places were lost. null when grid or finish is unknown.
        - `positionsGainedStatus` 'scored' | 'not-classified' | 'no-grid': Why positionsGained is what it is: scored = classified with a grid slot; not-classified = DNF/DNS/DSQ (the game scores -20/-25 instead of places, so positionsGained is null by rule); no-grid = grid unknown.
        - `qualiStatus` 'timed' | 'no-time' | 'disqualified' | 'null', nullable: timed = set a qualifying time; no-time and disqualified both score the game's -5 in qualiPosPoints; null when no qualifying data.
        - `positionsGainedPoints` integer: Points for places gained: +1 per place (gains only).
        - `positionsLostPoints` integer: Points deducted for places lost: -1 per place, 0 when none were lost (a Sprint loss is capped at -10).
        - `fastestLapPoints` integer, nullable: +10 if this driver set the fastest race lap, else 0. null on a Sprint without captured fastest-lap timing, and on a live session.
        - `overtakes` integer, nullable: On-track overtakes credited to the driver in the session, counted from the stored timing-data overtake events. null when no overtake record exists for the session.
        - `overtakePoints` integer, nullable: Points for overtakes: +1 per overtake (overtakes x 1). null when overtakes is null.
        - `driverOfTheDayPoints` integer: Driver of the Day bonus (+10 for the winner of the fan vote), else 0. Always 0 on a Sprint.
        - `beatTeammateRace` integer: Deprecated: always 0. The game awards no beat-teammate points.
        - `beatTeammateQuali` integer, nullable: Deprecated: always 0 (null on a Sprint / live session). The game awards no beat-teammate points.
        - `dnfPenalty` integer: -20 on a Grand Prix DNF / DSQ, -10 in a Sprint, else 0.
        - `total` integer: Sum of every component above: the driver's fantasy score for the session.
  - `message` string

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response

---

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